package java_DesignPattern.CreatorPattern.PrototypePattern.DeepClone;

/**
 * 原型模式---浅克隆引用类型问题
 */
public class Test {
    public static void main(String[] args) throws CloneNotSupportedException {

        JZh jZh = new JZh();

        Student stu = new Student();
        stu.setName("zsj");
        jZh.setStu(stu);

        JZh jZh1 = jZh.clone();

        //但是如果此时从新new Student对象重新赋值个体jZh1也能避免出现下方问题,因为
        // 此时两个JZh对象内部的Student对象不再是指向同一块内存空间了
        jZh1.getStu().setName("bjj");

        //因为此时还是浅克隆,两者指向同一个内存地址所以出现问题两个bjj
        System.out.println(jZh1==jZh);
        jZh.show();
        jZh1.show();
    }
}
